package cn.icanci.loopstack.plugin.dalgen.model;

import java.util.Map;
import java.util.Set;

/**
 * 解析配置信息
 * 
 * @author icanci
 * @since 1.0 Created in 2022/05/13 17:33
 */
public class ConfigurationInfoVO {
    /**
     * 数据库
     */
    private String              dataBase;

    /**
     * driver
     */
    private String              driver;

    /**
     * 数据库连接
     */
    private String              connectUrl;

    /**
     * 用户名
     */
    private String              loginName;

    /**
     * 密码
     */
    private String              password;

    /***
     * 需要处理的表名 以 ; 划分
     */
    private String              include;

    /***
     * 需要处理的表名Map
     */
    private Map<String, String> includeMap;

    /***
     * 需要处理的自定义Handle名 以 ; 划分
     */
    private String              customHandleInclude;

    /***
     * 需要处理的自定义Handle名
     */
    private Map<String, String> customHandleIncludeMap;

    /**
     * 项目名
     */
    private String              projectPath;

    /**
     * 包名
     * 为原始包名+模块名字
     */
    private String              packageName;

    /**
     * 作者名
     */
    private String              authorName;

    /**
     * 真实输出文件路径
     */
    private String              realProjectCodePath;

    /**
     * 需要移除的前缀
     */
    private String              removePreTable;

    /**
     * 需要移除的前缀
     */
    private Set<String>         removePreTables;

    /**
     * 数据源模块
     */
    private String              dbModule;

    public String getDataBase() {
        return dataBase;
    }

    public void setDataBase(String dataBase) {
        this.dataBase = dataBase;
    }

    public String getDriver() {
        return driver;
    }

    public void setDriver(String driver) {
        this.driver = driver;
    }

    public String getConnectUrl() {
        return connectUrl;
    }

    public void setConnectUrl(String connectUrl) {
        this.connectUrl = connectUrl;
    }

    public String getLoginName() {
        return loginName;
    }

    public void setLoginName(String loginName) {
        this.loginName = loginName;
    }

    public String getPassword() {
        return password;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getInclude() {
        return include;
    }

    public void setInclude(String include) {
        this.include = include;
    }

    public Map<String, String> getIncludeMap() {
        return includeMap;
    }

    public void setIncludeMap(Map<String, String> includeMap) {
        this.includeMap = includeMap;
    }

    public String getCustomHandleInclude() {
        return customHandleInclude;
    }

    public void setCustomHandleInclude(String customHandleInclude) {
        this.customHandleInclude = customHandleInclude;
    }

    public Map<String, String> getCustomHandleIncludeMap() {
        return customHandleIncludeMap;
    }

    public void setCustomHandleIncludeMap(Map<String, String> customHandleIncludeMap) {
        this.customHandleIncludeMap = customHandleIncludeMap;
    }

    public String getProjectPath() {
        return projectPath;
    }

    public void setProjectPath(String projectPath) {
        this.projectPath = projectPath;
    }

    public String getPackageName() {
        return packageName;
    }

    public void setPackageName(String packageName) {
        this.packageName = packageName;
    }

    public String getAuthorName() {
        return authorName;
    }

    public void setAuthorName(String authorName) {
        this.authorName = authorName;
    }

    public String getRealProjectCodePath() {
        return realProjectCodePath;
    }

    public void setRealProjectCodePath(String realProjectCodePath) {
        this.realProjectCodePath = realProjectCodePath;
    }

    public String getRemovePreTable() {
        return removePreTable;
    }

    public void setRemovePreTable(String removePreTable) {
        this.removePreTable = removePreTable;
    }

    public Set<String> getRemovePreTables() {
        return removePreTables;
    }

    public void setRemovePreTables(Set<String> removePreTables) {
        this.removePreTables = removePreTables;
    }

    public String getDbModule() {
        return dbModule;
    }

    public void setDbModule(String dbModule) {
        this.dbModule = dbModule;
    }
}